developmentor - a developer services company				  
				      Essential .NET Security
   Modules

Web Application Security


1. Application pools in IIS 6 allow
grouping of web apps into processes
configuration of HTTP worker process identity
separation of web apps into different worker processes for security and fault tolerance
all of the above

2. In web.config, setting the authentication mode to "Windows" means that
clients will use Kerberos to authenticate with the web server
clients must use Internet Explorer
ASP.NET will use whatever client identity IIS discovered during authentication

3. Modules in the ASP.NET pipeline
are a good place to implement mandatory security features
should never be used for security code, because web page developers might forget to call them

4. Url authorization
is based on the >authorization< section in web.config
doesn't have any effect on static files if they are served up directly by the kernel, so watch out!
does not require the client to have a Windows account
allows both role based checks and direct tests for user names
all of the above

5. The forms authentication cookie
is encrypted by default so we never worry about it getting stolen by a bad guy
is MAC protected by default so the client cannot change her name in the cookie in an attempt to elevate her privileges
must be present if forms authentication is in use, otherwise the user will be redirected to a login page